home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga Format CD 49
/
Amiga Format CD49 (2000-01-17)(Future Publishing)(GB)(Track 1 of 3)[!][issue 2000-02].iso
/
-serious-
/
graphics
/
gnuplot
/
gnuplot-3.7.1src
/
gnuplot-3.7.1
/
makefile.win
< prev
next >
Wrap
Makefile
|
1999-11-29
|
10KB
|
356 lines
# make file øÄ
3.1 Windows version
# and Win32 using Borland C++ 4 (or 5? --- 4.52 is known to work)
# or Borland C++ Builder 1 (newer versions may work as well)
#
# This makefile may need some editing before it can be used. Check
# BCC installation path, the WIN32 and RUNTIME_LIB flags, in particular.
#
# The compile and link includes debug flags. Take them out if you
# do not want them included (-y -v -M, /m /s /v /l)
#
# New 991003: WIN32=1 build makes the helpers (doc2rtf, bf_test) as Win32
# console applications, instead of plain DOS programs. This
# way, it also works with those compilers missing a DOS option.
# where to place wgnuplot.hlp helpfile
HELPFILE = wgnuplot.hlp
# location of Borland C compiler
TC = d:\bc31
# location of TLINK.EXE and BCC.EXE
BIN = $(TC)\bin\\
#The full path name of the help compiler. For BC++:
HC = $(BIN)\hc
# this comes with C++ Builder 1.0 (but doesn't seem to work):
#HC = $(TC)\help\tools\hcw /c /e
# or you can use the 'help workshop' available directly from MS:
#HC = h:\mssdk\bin\hcw /c/e
# WIN32=1 for Win32s or Win32 (--> '95 or NT)
# new: allow '-DWIN32=1' on make command line to take effect:
!if "$(WIN32)"==""
WIN32=0
!endif
# Uncomment _this_ for BC++ 4.52 (or others that give linker errors for
# the 'errno' variable)... :
RUNTIME_LIBRARY=cw32.lib
# ... or this for more modern ones (like C++Builder 1.0) -- it's the
# properly multithreading one:
#RUNTIME_LIBRARY=cw32mt.lib
!if $(WIN32)
# 32bit Windows compilation.
CC = bcc32
PROCESSOR_OPT =
DEFINE_HELPFILE = -DHELPFILE=\"$(HELPFILE)\"
# For BC++ 4.52, you may try this version with Pentium scheduling
# optimization. NB: bcc32a in 4.52 increased in bugginess quite
# a bit more than in program speed :-(
#CC = bcc32a
#PROCESSOR_OPT = -5
!else
# 16bit compilation:
CC = bcc
DEFINE_HELPFILE = -DHELPFILE="$(HELPFILE)"
!endif
# -c means don't link
# -ml means use large model (large code, large data)
# -M means produce link map
# -y means include line numbers for debugger
# -v means include debug info
# -w- means ignore warnings and do not report them
# -w-rvl ignore function must return a value error
# -Ff=128 means make data object > 128 FAR
# -W means window application
# -DREADLINE to use the history/line editing capability. If you want this
# capability add -DREADLINE to CFLAGS then add 'readline' to the /o
# section of the linker call.
!if $(WIN32)
CFLAGS = -c -W -M -G -y -v -w-rvl -w-use -w-par -w-aus -w-pro $(PROCESSOR_OPT) -I$(TC)\include -Iwin -DREADLINE=1 -DHAVE_STRNICMP -DWIN32 -DHAVE_STRERROR -DNO_GIH -DNOGAMMA -DWIN32_LEAN_AND_MEAN -DANSI_C -DHAVE_GETCWD
CAUXFLAGS = -tWC -w-par -w-use -w-aus -f -N -M -y -v -d -I$(TC)\include -DWIN32 -DWINDOWS_NO_GUI -DHAVE_STRNICMP -DANSI_C
!else
CFLAGS = -c -W -ml -w-par -w-use -w-aus -f -h -N -M -y -v -d -Ff=32 -I$(TC)\include -Iwin -DREADLINE=1 -zEGPFAR_DATA -DHAVE_STRNICMP -DMSDOS=1 -DNO_GIH -DANSI_C -DHAVE_GETCWD -DNDEBUG
CAUXFLAGS = -ml -w-par -w-use -w-aus -f -N -M -y -v -d -I$(TC)\include -DMSDOS=1 -DHAVE_STRNICMP -DANSI_C
!endif
OBJS = bitmap.obj command.obj contour.obj eval.obj graphics.obj graph3d.obj \
internal.obj misc.obj parse.obj plot.obj plot2d.obj plot3d.obj \
readline.obj scanner.obj set.obj show.obj specfun.obj standard.obj \
stdfn.obj term.obj util.obj version.obj binary.obj winmain.obj \
interpol.obj fit.obj matrix.obj datafile.obj alloc.obj util3d.obj \
hidden3d.obj time.obj help.obj
DLLOBJS = wgnuplib.obj wtext.obj wmenu.obj wpause.obj wgraph.obj wprinter.obj
CSOURCE5 = term\aed.trm term\cgi.trm term\cgm.trm term\debug.trm \
term\dumb.trm term\dxy.trm \
term\eepic.trm term\epson.trm term\fig.trm term\hp26.trm \
term\hp2648.trm term\hpgl.trm term\hpljii.trm
CSOURCE6 = term\impcodes.h term\imagen.trm term\object.h \
term\iris4d.trm term\kyo.trm term\latex.trm term/pbm.trm term\win.trm
CSOURCE7 = term\post.trm term\qms.trm term\regis.trm term\sun.trm \
term\t410x.trm term\tek.trm term\unixpc.trm term\unixplot.trm \
term\v384.trm term\x11.trm
CSOURCE8 = contour.c specfun.c binary.c interpol.obj
WINDOWS = makefile.win makefile.msw README.win win\wcommon.h \
win\wgnuplib.c win\wgnuplib.def win\wgnuplib.h win\wgnuplib.rc\
win\wgnuplot.def win\wgnuplot.hpj win\wgnuplot.mnu win\wgnuplot.rc \
win\wgraph.c win\winmain.c win\wmenu.c win\wpause.c \
win\wprinter.c win\wresourc.h win\wtext.c win\wtext.h \
win\geticon.c docs\doc2rtf.c term\win.trm win\wgnupl32.def
!if $(WIN32)
all: wgnupl32.exe $(HELPFILE) wgnuplot.mnu demo\bf_test.exe
!else
all: wgnuplot.exe wgnuplot.dll $(HELPFILE) wgnuplot.mnu demo\bf_test.exe
!endif
wgnuplot.exe: $(OBJS) win\wgnuplot.def win\wgnuplot.rc winmain.obj wgnuplot.lib
# $(BIN)tlink /Twe /c @&&!
$(BIN)tlink /Twe /c /s /v /l @&&!
$(TC)\lib\C0Wl +
bitmap command eval graphics graph3d help internal misc parse +
plot plot2d plot3d scanner set show specfun standard stdfn term util version contour +
binary interpol +
winmain +
readline +
fit matrix datafile alloc util3d hidden3d time +
,wgnuplot,wgnuplot, +
wgnuplot.lib +
$(TC)\lib\import +
$(TC)\lib\mathwl +
$(TC)\lib\cwl, +
win\wgnuplot.def
!
$(BIN)brc -30 -k -i$(TC)\include win\wgnuplot.rc wgnuplot.exe
# gnuplot.opt contains a list of the 'core' files, in case that's of
# any use...
wgnupl32.exe: $(OBJS) $(DLLOBJS) win\wgnupl32.def wgnupl32.res winmain.obj
# $(BIN)tlink32 /Tpe /c @&&!
$(BIN)tlink32 /Tpe /c /m /s /v @&&!
$(TC)\lib\C0W32 +
bitmap command eval graphics graph3d help internal misc parse +
plot plot2d plot3d scanner set show specfun standard stdfn term util version contour +
wgnuplib wtext wmenu wpause wgraph wprinter +
binary interpol +
winmain +
readline +
fit matrix datafile alloc util3d hidden3d time +
,wgnupl32,wgnupl32, +
$(TC)\lib\import32 +
$(TC)\lib\$(RUNTIME_LIBRARY), +
win\wgnupl32.def, wgnupl32.res
!
wgnupl32.res: win\wgnuplot.rc win\wgnuplib.rc
$(BIN)brcc32 -DWIN32 -i$(TC)\include -r -fowgnupl32 win\wgnuplot.rc
# default rules
.c.obj:
$(BIN)$(CC) @&&!
$(CFLAGS)
! $<
# rules
bitmap.obj: bitmap.c bitmap.h plot.h
command.obj: command.c plot.h setshow.h fit.h
$(BIN)$(CC) $(DEFINE_HELPFILE) @&&!
$(CFLAGS)
! command.c
contour.obj: contour.c plot.h
eval.obj: eval.c plot.h
graphics.obj: graphics.c plot.h setshow.h
graph3d.obj: graphics.c plot.h setshow.h
fit.obj: fit.c fit.h matrix.h plot.h
matrix.obj: matrix.c matrix.h fit.h
internal.obj: internal.c plot.h
misc.obj: misc.c plot.h setshow.h
parse.obj: parse.c plot.h
$(BIN)$(CC) @&&!
$(CFLAGS)
! parse.c
plot.obj: plot.c plot.h setshow.h
$(BIN)$(CC) @&&!
$(CFLAGS)
! plot.c
hidden3d.obj: hidden3d.c plot.h setshow.h
plot3d.obj: plot3d.c plot.h setshow.h
plot2d.obj: plot2d.c plot.h setshow.h
readline.obj: readline.c plot.h
scanner.obj: scanner.c plot.h
set.obj: set.c plot.h setshow.h
show.obj: show.c plot.h setshow.h
$(BIN)$(CC) $(DEFINE_HELPFILE) @&&!
$(CFLAGS)
! show.c
specfun.obj: specfun.c
standard.obj: standard.c plot.h
stdfn.obj: stdfn.c stdfn.h
interpol.obj: interpol.c plot.h setshow.h
term.obj: term.c term.h plot.h set.c show.c bitmap.h $(CSOURCE5) $(CSOURCE6) $(CSOURCE7) win\wgnuplib.h
$(BIN)$(CC) @&&!
$(CFLAGS)
! $(TERMFLAGS) -Iterm -I. term.c
util.obj: util.c plot.h
util3d.obj: util3d.c plot.h setshow.h
version.obj: version.c
winmain.obj: win\winmain.c win\wgnuplib.h win\wtext.h plot.h
$(BIN)$(CC) $(DEFINE_HELPFILE) @&&!
$(CFLAGS)
! win\winmain.c
wgnuplot.mnu: win\wgnuplot.mnu
copy win\wgnuplot.mnu wgnuplot.mnu
# different compiler options for DLL's */
!if $(WIN32)
DLLCC = $(BIN)$(CC) -DWIN32 -c -M -y -v -WE -I$(TC)\include -Iwin
!else
DLLCC = $(BIN)$(CC) -c -WD -ms! -w-par -f -M -y -v -w -N -I$(TC)\include -Iwin
!endif
wgnuplot.lib: wgnuplot.dll
$(BIN)implib wgnuplot.lib wgnuplot.dll
wgnuplot.dll: $(DLLOBJS) win/wgnuplib.def win/wgnuplib.rc
$(BIN)tlink /c /n /Twd /L$(TC)\lib /m /s /v /l @&&!
c0ds +
wgnuplib wtext wmenu wpause wgraph wprinter, +
wgnuplot.dll, +
wgnuplib.map, +
import mathws cws, +
win\wgnuplib.def
!
$(BIN)brc -30 -i$(TC)\include -t win\wgnuplib.rc wgnuplot.dll
wgnuplib.obj: win/wgnuplib.c win/wgnuplib.h win/wcommon.h win/wresourc.h
$(DLLCC) win/wgnuplib.c
wmenu.obj: win/wmenu.c win/wgnuplib.h win/wcommon.h win/wresourc.h
$(DLLCC) win/wmenu.c
wtext.obj: win/wtext.c win/wgnuplib.h win/wcommon.h win/wresourc.h
$(DLLCC) win/wtext.c
wpause.obj: win/wpause.c win/wgnuplib.h win/wcommon.h win/wresourc.h
$(DLLCC) win/wpause.c
wprinter.obj: win/wprinter.c win/wgnuplib.h win/wcommon.h win/wresourc.h
$(DLLCC) win/wprinter.c
wgraph.obj: win/wgraph.c win/wgnuplib.h win/wcommon.h win/wresourc.h
$(DLLCC) win/wgraph.c
# convert gnuplot.doc to gnuplot.rtf
$(HELPFILE): win\gnuplot.rtf
$(HC) win\wgnuplot.hpj
win\gnuplot.rtf: doc2rtf.exe docs\gnuplot.doc win\wgnuplot.hpj
doc2rtf docs\gnuplot.doc win\gnuplot.rtf
doc2rtf.exe: docs\doc2rtf.c docs\termdoc.c docs\xref.c $(CSOURCE5) $(CSOURCE6) $(CSOURCE7)
$(BIN)$(CC) -edoc2rtf.exe @&&!
-D_Windows
-w-pro
$(CAUXFLAGS)
-I. -Iterm -Idocs
! docs\doc2rtf.c docs\termdoc.c docs\xref.c
# make binary demo files
demo\bf_test.exe: bf_test.c dbinary.obj dalloc.obj
$(BIN)$(CC) -edemo\bf_test.exe @&&!
$(CAUXFLAGS)
-L$(TC)\lib
! bf_test.c dbinary.obj dalloc.obj
cd demo
bf_test
cd ..
dalloc.obj: alloc.c
$(BIN)$(CC) -c @&&!
$(CAUXFLAGS)
! -odalloc.obj alloc.c
dbinary.obj: binary.c
$(BIN)$(CC) -c @&&!
$(CAUXFLAGS)
! -odbinary.obj binary.c
# clean up temporary files
clean:
del *.obj
del win\*.obj
del wgnuplot.map
del win\wgnuplot.res
del wgnupl32.map
del wgnupl32.res
del win\gnuplot.rtf
del doc2rtf.map
del doc2rtf.exe
del win\wgnuplib.res
del wgnuplib.map
del wgnuplot.lib
del bf_test.map
del demo\bf_test.map
del demo\bf_test.exe
realclean: veryclean
veryclean: clean
del wgnuplot.exe
del wgnuplot.hlp
del win\wgnuplot.hlp
-attrib -h wgnuplot.gid
del wgnuplot.gid
del wgnuplot.mnu
del wgnuplot.dll
del wgnupl32.exe
del demo\binary1
del demo\binary2
del demo\binary3
del demo\fit.log
del demo\soundfit.par